#pragma once
#include <iostream>
#include <stdlib.h>
#include <assert.h>

using namespace std;

class BT
{
private:
	typedef int DataType;
	typedef struct BTNode
	{
		DataType _data;
		BTNode* _left = nullptr;
		BTNode* _right = nullptr;

	}BTNode;
	void _print(BTNode* root);
	size_t _size = 0;
	BTNode* _root;

public:
	BT():_root(nullptr)
	{}
	void insert(DataType val);
	bool find(DataType val);
	int size();
	void print();
	bool erase(const int& key);
};



